﻿using ErrorOr;
using Gnivc.CarDealership.Api.Domain.Entities;

namespace Gnivc.CarDealership.Api.Application.Abstractions.Repositories;

public interface IBrandRepository
{
    Task<ErrorOr<IEnumerable<Brand>>> GetAllAsync();
    Task<ErrorOr<Brand?>> GetByIdAsync(Guid brandId);
    Task<ErrorOr<Created>> AddAsync(Brand brand);
    Task<ErrorOr<Updated>> UpdateAsync(Brand brand);
    Task<ErrorOr<Deleted>> DeleteAsync(Guid brandId);
}
